/******************************************************************************
** 公司名称：天津柯迪斯科技有限公司
** 版权信息：
** 文件名称： bsp_GPIO.c
** 模块名称： KD21C仪表通用管脚初始化模块
** 版 本 号： V1.0
** 作    者： ZRT
** 备    注： 所有作为通用IO使用的管脚，在此进行初始化。其它作为外设使用的管脚，
**            在相应外设初始化函数里面
** 修改记录： 版本     修改人      时间         修改内容
**
******************************************************************************/
 
/******************************************************************************
* 头文件
******************************************************************************/
#include "bsp_GPIO.h"
/******************************************************************************
* 本文件宏定义 ('#define')                             
******************************************************************************/
 
/******************************************************************************
* 本文件类型定义 ('typedef')                                         
******************************************************************************/

/******************************************************************************
* 本文件静态函数声明 ('static')
******************************************************************************/

/******************************************************************************
* 全局变量定义 
******************************************************************************/

/*****************************************************************************
* 函数实现 - global ('extern') and local ('static')
******************************************************************************/
 
 
/******************************************************************************
** 功  能：通用外部引脚初始化
** 参  数：无
** 返回值：无
** 备  注：作为外设使用的引脚，放在相应外设的初始化函数中
******************************************************************************/
void vBsp_GPIO_Init(void)
{
    GPIO_InitTypeDef GPIO_InitStruct = {0};
    __HAL_RCC_GPIOA_CLK_ENABLE();
    __HAL_RCC_GPIOB_CLK_ENABLE();    
    __HAL_RCC_GPIOD_CLK_ENABLE();
    /*Configure GPIO pin Output Level */
    LED1_OFF;
    LED2_OFF;
    LED3_OFF;   
    RELAY_OFF;
    BUZZ_OFF;    
    /*Configure GPIO pin : PtPin */
    GPIO_InitStruct.Pin = LED1_Pin;
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
    
    GPIO_InitStruct.Pin = LED2_Pin|LED3_Pin;
    HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);    
    
    GPIO_InitStruct.Pin = RELAY_Pin|BUZZ_Pin;
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);        

}



